Jak mawiają górale, są trzy rodzaje prawdy: święta prawda, tyż prawda i ... prawda. Najnowsze badania bajtockich logików potwierdzają to. Badają oni wyrażenia logiczne (formuły zdaniowe) o uproszczonej postaci nazywanej klauzulową. Postać klauzulowa wygląda następująco:
xi (dla
1
i
n).
x2
x3.
x2)
(
x1
x3)
(
x3).
{prawda,fałsz},
gdzie f (i) jest wartością nadawaną zmiennej xi.
Wszystkich możliwych wartościowań jest 2n.
Dla konkretnego wartościowania, wartością danej formuły
jest albo prawda albo fałsz.
Mówimy, że formuła jest prawdziwa, jeśli dla każdego wartościowania jej wartością jest prawda. Powiemy, że formuła jest fałszywa, jeżeli dla każdego wartościowania jej wartością jest fałsz. Często formuła nie jest ani prawdziwa, ani fałszywa, ale jej wartość zależy faktycznie od danego wartościowania. Prawdziwość formuły możemy określić jako ułamek (z zakresu od 0 do 1):
x1)
(
x2
x3)
(x3
x2)
k
10).
Plik for0.in zawiera dane zgodne z powyższym przykładem.
Napisz program, który na wejściu otrzymuje dokładnie jedną
liczbę całkowitą k (
0
k
10) i wypisuje dokładnie
jeden wiersz wyjścia, zawierający przybliżoną prawdziwość
formuły podanej w k-tym zestawie danych.
Prawdziwość powinna być wypisana w postaci
ułamka dziesiętnego, obliczonego ze względną dokładnością
3%. To znaczy, jeśli prawdziwość formuły to p, a jej obliczone
przybliżenie to p', to musi zachodzić
| p' - p|
0.03p.
n
100,
1
m
100,
oddzielone pojedynczym odstępem.
Zmienne logiczne, które mogą pojawiać się w formule to
x1, x2,..., xn.
Formuła składa się z m klauzul, opisanych w kolejnych m wierszach,
po jednej w wierszu.
Każdy z tych wierszy zawiera liczby całkowite pooddzielane pojedynczymi
odstępami.
Pierwsza z tych liczb, l,
1
l
n, to liczba literałów
tworzących klauzulę.
Dalej w wierszu znajduje się l liczb całkowitych reprezentujących
kolejne literały klauzuli.
Są to liczby różne od zera, z zakresu od - n do n.
Liczba i (dla
1
i
n) reprezentuje xi, a
liczba - i reprezentuje
xi.
0poprawną odpowiedzią jest:
0.5
Akceptowanymi odpowiedziami do przykładowego testu są również: 0.485, 0.498, 0.51, 0.515.
Autor zadania: Marcin Stefaniak.
<Wyślij rozwiązanie> [0/100]W razie problemów technicznych ze Szkopułem, prosimy o kontakt mailowy pod adresem szkopul@fri.edu.pl.
Jeśli chciałbyś porozmawiać o zadaniach, rozwiązaniach lub problemach technicznych, odwiedź nasze serwery na Discordzie. Są one moderowane przez społeczność, ale członkowie zespołu wsparcia również aktywnie się tam udzielają.